


Handsy

by sepsner



Category: Voltron: Legendary Defender
Genre: Exhibitionism, Frotting, Horny Lance, M/M, Oh no there might be plot now, Porn Without Plot, Semi-Public Sex, handjobs, kind of?, kind of???, lance is desperate, pining lance, uhh i dunno how to tag this??, unedited
Language: English
Status: In-Progress
Published: 2018-11-10
Updated: 2018-11-19
Packaged: 2019-08-21 18:19:37
Rating: Explicit
Warnings: Creator Chose Not To Use Archive Warnings
Chapters: 2
Words: 4,099
Publisher: archiveofourown.org
Story URL: https://archiveofourown.org/works/16581641
Author URL: https://archiveofourown.org/users/sepsner/pseuds/sepsner
Summary: Lance can't look at Keith without thinking about how good he looks, and how good he'd look on top of him.





	1. Chapter 1

**Author's Note:**

> A one-shot I've written as a collection of fics for NaNo. I may edit this later!

Keith’s hands drove Lance wild. Whenever he polished his knife, or during training when he would spin it between his fingers, or when he ran his hands through his hair to wipe at the sweat on his forehead. When he used a knife and fork, Lance caught up in staring at him cutting through his food. Or even when he was typing or drawing on one of the space tablets on the ship. His hands were so fascinating, Lance thought.  
  
And every night, he thought about those hands running over his body. As he touched himself, he imagined Keith doing it, instead. Using his rough and scarred fingers to stroke Lance’s cock, pin him down against the bed, hold his hands over his head, run across his nipples…  
  
Fantasies with Keith were the ones that Lance enjoyed the most.  
  
It was seemingly out of nowhere when Allura called everyone to the main room. “We need a lot of things seen to today,” she explained.  
  
Lance glanced over at Keith. He had shoved his hands into his armpits, which was a shame, but at least he could still run his eyes over Keith’s form. He almost drowned Allura out completely, until he overheard his name.  
  
“Lance and Keith will be training. Hunk and Pidge will help Coran with finding the replacements. Are we all clear?”  
  
Lance groaned. “I’ve really gotta train with _Keith_?” It wouldn’t have been a problem if Lance didn’t find him so unbearably hot. “Can’t I train with Hunk, instead?”  
  
“Lance,” Allura frowned, putting her hands on her hips. “You and Keith are at equal levels in the training exercises. This is only fair.”  
  
Lance groaned again. He was going up against Keith, one on one, just each other. He was _doomed_. Lance folded his arms and looked over at Keith, who had been staring at him with his hands on his hips. Lance’s heart thudded in his chest. It wasn’t just Keith’s hands that drove him crazy. Keith had taken his jacket off and his neck was exposed, and all Lance wanted to do was bite into the pale flesh and leave marks.  
  
“Hello?” Keith snapped his fingers, bringing Lance back to reality. “Are we going?”  
  
“Yeah,” Lance grumbled, batting Keith’s hand away. “We’re going. Cool your jets.”  
  
Keith snorted, before turning and leading the way to the training room. Lance couldn’t stop himself. His eyes wandered down Keith’s back (which was broad, and Lance bet looked really good with his shirt off) and down to his ass. He bit his lip, watching the way it moved as Keith walked. Heat was already rising in Lance’s pants. He balled his hands into fists and tried staring at the back of Keith’s head instead. His hair was gorgeous, and Lance wanted nothing more than to grab it and pull Keith’s head back.  
  
Don’t get a boner, Lance. Oh, God. Don’t get a boner.  
  
Somehow, Lance’s dick remained soft when they arrived at the training room. Keith stretched his arms and Lance turned away, not wanting to look. Well, of _course_ he wanted to look, but he couldn’t. Not if he wanted to avoid getting hard. The blue paladin threw his jacket to the floor and took a training broadsword - he had been trying to get used to using swords since his bayard turned. That was probably why Allura paired him with Keith. Ugh, stupid logic.  
  
“Hey,” Keith called out, and Lance looked over his shoulder. Keith had pulled his hair back into a small ponytail, his dagger in hand. “You ready?”  
  
Lance would have happily used the ponytail to yank Keith’s head back. Kiss his neck. Show it all off. “Ready,” Lance whimpered, then cleared his throat. “Yeah, man. Of course I’m ready. I was born read-”  
  
Mid-sentence, Keith lunged forwards and took a lazy swipe. Lance blocked it easily, but took the hint. Stop talking. Start fighting. Maybe if Lance focused on the sparring, it would take his mind off of how good Keith’s body was.  
  
Sparring just did the opposite.  
  
Lance kept looking over at Keith’s chest, watching it heave through the fitting black shirt. Was it just Lance, or was the V-neck even lower today than usual? The more they sparred, the more Keith sweated - and the more Lance raked his eyes over Keith’s body. His arms looked like they could crush Lance, and his hands were just as appealing as ever. But his lips--  
  
As he was distracted by fantasising about Keith’s mouth, Lance found himself pinned against the wall, both of their blades locked. Lance’s breath hitched. Keith was so close, he could feel his panting against his neck. It made his skin stand up on end. The workout had put Keith through his paces, the smell hitting Lance right in the dick. And, to make matters worse, Keith’s thigh was pressing up between Lance’s leg.  
  
The slight pressure was too much.  
  
Lance’s arms shook and he gave a whimper, not able to hold himself back as his pants tightened. His arms gave way, and Keith started to overpower him.  
  
“What’s wrong?” Keith asked, seemingly jeering Lance. “Can’t keep up?”  
  
“I…” Keith was leaning over Lance, a hungry look in his eyes. Lance gave out a shaky sigh, pushing his hips forwards. “Keith-”  
  
Keith blinked, then glanced down. “Oh.” He froze in place, biting his lip and glancing away.  
  
Dread sunk into the bottom of Lance’s stomach. He had gone and fucked things up for good.  
  
“I- Keith,” Lance stammered, lowering his arms, “listen, it’s not…”  
  
Lance cut himself off with a moan as Keith pressed his thigh against his crotch.  
  
Keith dropped his blade, instead pressing both of his hands either side of Lance. He was so close, pressing his chest against Lance’s. He couldn’t stop himself and dropped the training blade, then placed his hands on Keith’s hips. Gently, like if he held on too tight, Keith would squeeze out of his grasp.  
  
He wanted to say something clever, but with Keith so close to his face, he only whimpered out one word. “ _Keith_?”  
  
“Shut up,” Keith mumbled, brushing their noses together. The slight touch was electric. Lance tilted his head up, swallowing hard, lips pouting, begging to be kissed. Keith moved his head to the side, brushing Lance’s face with his bangs. Lance’s whole body was on edge, every slight touch making him shudder.  
  
“Please,” Lance whispered, pushing his hips forwards again. His dick strained against his pants.  
  
Keith ducked into the crook of Lance’s neck, panting against his skin. “Please what?” He mumbled, lightly grazing his lips up his neck.  
  
“Kiss me,” Lance begged, his hands suddenly gripping the back of Keith’s shirt. “Oh, god, Keith, please just kiss me.”  
  
Lance could _feel_ Keith’s smirk against his jaw. The red paladin pulled his lips away - _torture_ \- before pressing them against Lance’s - _oh_ \-- Lance barely registered that he was being kissed. Keith’s lips were so gentle and light, an invitation, a question. The answer, of course, was yes. Lance pressed back against Keith’s mouth, desperate for this kiss. Lance was starved, and Keith’s lips were cherries.  
  
Keith pressed his thigh against Lance’s dick again, making him moan. He parted his lips slightly, feeling Keith doing the same, and eagerly slid his tongue into the other man’s mouth. Lance whimpered, grinding his hips against Keith’s leg and yanking on his shirt. His cock strained against his jeans, throbbing and desperate for relief.  
  
Panting, Keith broke the kiss for a moment, before diving in and pressing his open mouth to Lance’s neck. Lance arched his back and shuddered while Keith’s hands tugged at his waistband, working on unbuttoning Lance’s fly. Lance thrust his hips forward in an attempt to grind against Keith’s hands.  
  
“Calm down,” Keith hissed, finally yanking Lance’s jeans out of the way. “Be patient.”  
  
“I need you,” Lance begged, grasping desperately at Keith’s shirt. “Oh, Keith, please…”  
  
Keith palmed Lance’s dick through his boxers and Lance let out an undignified moan. Fuck it. All of his dignity had died the moment he thrust his hips, anyway. Lance whimpered as Keith moved his hand away again, desperate for the friction. “Keith?”  
  
“I’m not leaving,” Keith snorted. “Stop whining like that.” He pressed his forehead to Lance’s and looked down, watching himself hook a finger into Lance’s waistband and tug it down, making it strain against his cock before it finally sprung from his boxers. Keith let out a shaky sigh, and Lance noticed for the first time during this that Keith was also rock hard.  
  
Lance’s focus was soon torn from Keith’s dick and went straight to his own as Keith wrapped his hand around it.  
  
“Keith,” Lance whimpered, thrusting his hips to fuck Keith’s hand.  
  
“Yeah?” Keith whispered against Lance’s ear. “You wanna say something?”  
  
Lance buried his nose in Keith’s shoulder, moaning. “You’re- you’re so hot, holy shit.”  
  
Keith squeezed his hand around Lance’s dick, making it throb. Lance gasped. He pulled away in time to watch Keith pull his own cock from his pants, twitching slightly now that it wasn’t confined. Lance bit his lip, shuddering. He wanted to touch it, put it in his mouth, lower himself on it and get fucked the way he needed.  
  
Instead, Keith pressed their cocks together, using his hand to make sure they didn’t slip away. Lance groaned at the contact - he never knew how _good_ it would feel to just rub two dicks together like this. Maybe it was just because it was _Keith_. Keith’s hand enveloped one side of Lance’s cock, his dick supporting the other side, as Lance rocked against him.  
  
Lance gripped Keith’s shirt tighter, pulling the two men closer. Their hips rocked together, Lance whimpering and gasping at each small change in pace and pressure. “Keith,” he whispered. “Oh, God.”  
  
“Hold on a little more,” Keith sighed. He nuzzled against Lance’s neck and bit it. How was Lance meant to hold back when Keith was so _hot_ , driving Lance wild like this? He drove Lance wild fully dressed, and now they were both exposing themselves, Lance was _crazy_.  
  
Keith moaned against Lance’s neck, making Lance shudder. “I’m gonna cum,” Keith sighed.  
  
Lance swallowed. “Please,” he begged. “Me, too.” He was _desperate_ to see Keith cum, to watch his face and hear his noises. Just thinking about it made Lance’s stomach flip, feeling his cock throb and swell painfully, filling-  
  
He threw his head back, moaning Keith’s name as he spilled across his hand. Keith grunted, then groaned, and Lance could feel Keith shaking. After the heaving and writhing of their bodies, they both relaxed, slumping against the wall and each other.  
  
Lance finally let go of Keith’s shirt, letting his hands slide down his back. He caught his breath when it sunk in. He and Keith had just… “So,” Lance mumbled, pushing Keith off of him. “What, uh… just happened?”  
  
Keith couldn’t meet Lance’s eyes, looking anywhere but _at_ him. “You got a boner.”  
  
“Yeah,” Lance laughed weakly. “But then you went and..?”  
  
Keith finally looked _at_ Lance, biting his lower lip. His face was red and his body was tense. “I… wanted to touch it,” he mumbled. “I couldn’t help myself.”  
  
“Oh.” Lance couldn’t help but smile like a doofus. What? This was, like, his dream. Keith had just jerked him off! “I wanted you to touch it, too. Actually, I’ve jacked off over thinking about you touching it.”  
  
“What?”  
  
Wait, was that a step too far? Lance’s cheeks flushed. “Is that weird?”  
  
Keith looked shocked, before snorting and laughing lightly. “I think it’s pretty hot. I think about… I think about you, too.”  
  
The relief of an orgasm barely compared to the relief Lance felt now. This wasn’t weird! And Keith _wanted_ it! And… “Maybe we can do this again?”  
  
Keith snorted. “Sure. Maybe not in the training room next time.”  
  
“Seriously? You look really hot when you’re sweaty and worked up.”  
  
“Shut up,” Keith mumbled. “I just wouldn’t want anyone to walk in on it.”  
  
Lance raised his eyebrows and smirked. “Maybe that’d just make it hotter.”  
  
Keith laughed and shoved Lance, finally moving away from him to clean himself up and put himself away. Not much training happened that day, but Lance felt better than he had ever felt before.  
  
Lance didn’t just get Keith’s hands. Lance got _Keith_.


	2. Chapter 2

Keith ran his hands up Lance’s body, peeling his shirt off as he did. He peppered kisses across Lance’s chest as the blue paladin whined. Lance’s hips bucked up, hitting Keith’s torso. Keith put his hands on Lance’s hips and held them down forcefully, giving Lance a smirk, as if to say _someone’s impatient_. Lance whined, but kept his hips still, so Keith gave him a reward - unbuttoning his jeans and pulling out Lance’s cock, twitching desperately. Keith bit his lip as he looked it over, almost desperate for it, wrapping his hand around it and opening his mouth to  
  
“Did you hear that, Keith?”  
  
Keith blinked. He looked up from staring at the table to see Shiro, a concerned expression on his face. Keith swallowed hard. In his fantasies, he had almost forgotten that they were all in the mess hall. It was a good thing they were, too - Keith was painfully hard under the table.  
  
“Sorry. Could you say that again?”  
  
Shiro sighed before repeating what he had previously said. Keith tried to act like he was paying attention, but his mind was lingering back on Lance’s dick, naked and erect in Keith’s mind. His face flushed as he thought about putting it in his mouth, rolling his tongue over the head. Keith’s cock twitched, the slight friction against the fabric of his clothes making him moan.  
  
“Keith.” Shiro caught his attention again. Keith tensed up. What was _wrong_ with him? “Are you feeling okay? You look like you’re burning up.”  
  
“I…” Keith sighed. “I guess I’m not feeling good.” Maybe he could be excused, and then he could go back to his room and jerk off. Otherwise, he’d never lose this boner.  
  
“You should get some rest,” Shiro nodded. Good. Keith was home free. Now he could go and touch himself and stop thinking about-- “Lance. Can you walk Keith back to his room?”  
  
Keith whimpered. “I can walk back myself.”  
  
“I just wanna make sure you’re okay,” Shiro smiled. Damn Shiro, and damn how much of a big brother type he was.  
  
Lance sauntered over to Keith’s chair, a smug smile on his face. All of the interactions between the two paladins had changed since that day in training. Lance didn’t hold back with his fantasies anymore. If he caught Keith alone, he’d make any excuse for them to touch each other up. The only thing they hadn’t done to each other was actually have sex - Keith was always too anxious to with other people on the ship.  
  
“My lady,” he mocked.  
  
Keith shoved at his shin with his foot, then pulled his chair away from the table, turning it around completely before standing up. Fuck giving Hunk a faceful of his tent. No one else could see the strain in Keith’s pants, but Lance definitely did. Keith was surprised he lasted long enough to lead Keith out of the mess hall before he was pinning the red paladin up against a wall.  
  
“What’s this?” Lance hummed, pressing his palm against Keith’s dick. Keith whimpered, and it only seemed to encourage Lance more. “What have you been thinking about?”  
  
Lance pressed himself up against Keith. He could feel how warm the brunet was, his breath tickling at his neck. Keith swallowed, then tried to compose himself to speak. “You.”  
  
“Thinking about me how?”  
  
God, Lance was a little shit. “Thinking about you… on your back,” Keith whined, “with your cock hard and my mouth on it.”  
  
Lance sighed, squeezing Keith’s crotch. Keith shuddered, balling his hands into fists as he tried not to call out. Everyone else was still just next door…  
  
“I want you to suck me off,” Lance whispered against Keith’s ear. Just the suggestion made waves of pleasure roll through Keith.  
  
“Not here,” he mumbled.  
  
Lance shook his head. “If you’re not gonna suck me off here, then I’ll carry you to your room and I’ll _fuck_ you.”  
  
Keith’s eyes widened. “No!” He shook his head. “Everyone else is still in the ship! What if someone comes to check on me?”  
  
“You’d better suck me off, then.”  
  
Keith bit his lip. As much as he loved to have Lance’s dick in his mouth, part of him _desperately_ wanted it in his ass instead. Plus, they were far more likely to get caught in the hallway next to the mess hall than if they were in Keith’s room. He took a deep breath.  
  
“No. Fuck me.”  
  
“Here?” Lance smirked.  
  
“No!” Keith pushed him away playfully. “That wasn’t the deal.” He smirked at Lance, moving away from the wall and heading down the hallways to the rest quarters. Usually, he’d want to take his time and tease Lance, but now _he_ was the one who was desperate. A glance over the shoulder confirmed that Lance was definitely following him. Good. They’d have to make this quick.  
  
Almost instantly after the two of them headed into Keith’s room, Lance was on him. Hands dragging over his body, lips kissing his neck, his chest pressing against the red paladin’s. Keith wrapped his arms around Lance’s neck and pulled him in closer, the two of them almost completely flush against each other. Erections dragging against each other. Moaning, melting, melting…  
  
And then a knock.  
  
Keith covered his mouth to stifle another moan. Who the _fuck_ was knocking now? _Right now_? All Keith wanted was to get off. It was torture to peel himself away from Lance, who was smirking. Keith had no time to ask _why_ , but he had a bad feeling about it. He opened the door a crack, just enough for his head and shoulder to be seen.  
  
Oh, of course it was Shiro.  
  
“Hey, Keith,” he smiled. Usually, it was comforting. Right now, it was painful. Acting normal was painful. His jeans were painful.  
  
Keith opened his mouth to reply when he felt something press against his ass. A yelp escaped - he didn’t have to turn around to know that it was Lance, grinding against his ass. _Cheeky fucker_. Keith cleared his throat and composed himself.  
  
“Uh,” Shiro looked worried, “are you holding up okay?”  
  
“I’m fine,” Keith sighed. He was not fine. Lance was wrapping his arms around Keith’s waist, his palm pressing against his straining erection.  
  
“Do you know where Lance went?”  
  
Of course he knew where Lance went. He knew where Lance was going to be, too. Balls deep in his ass. As long as Shiro just _left them alone_.  
  
“No.” Lance had just unbuttoned his pants, if the relief in his crotch was anything to go by. He bit his lip. “He dropped me off here, then left.”  
  
“Hm.” Shiro looked up at the ceiling, rubbing his chin. Keith took the opportunity to silently gasp, trying to catch his breath. Lance had peeled away his pants and underwear - what was he doing? Shiro was _right there_!  
  
Shiro was _right there_. That was why. Lance was an exhibitionist. Of course-- but from the way Keith’s dick was twitching and leaking, he might be an exhibitionist, too.  
  
Keith cleared his throat. “Maybe he’s in--” He sharply gasped, feeling something cold and wet press against his ass. That had better not be Lance’s dick. “In, in, uh, training?” Keith gripped the door, realising that it wasn’t Lance’s dick. It was his fingers, pressing themselves further into him, making it harder for Keith to keep himself composed. Ugh, he could just _feel_ Lance’s smirk.  
  
“He might be,” Shiro hummed. Lance’s fingers curled. “I’m gonna go check.” Keith tensed up, trying not to moan. “Thanks for helping, Keith.”  
  
“No problem,” Keith strained.  
  
Shiro gave him a smile, and Keith’s legs shook. Lance’s fingers were scissoring, he could feel them. Keith was fighting every urge to moan and sigh and fuck himself against Lance’s fingers.  
  
“I hope you feel better soon,” Shiro hummed.  
  
Oh, he will feel better soon. So much better.  
  
“Thanks, Shiro.”  
  
As soon as Shiro turned away, the doors were closed, and Keith let out a long-suppressed moan. His hips rode back against Lance’s fingers, a hand flying to his leaking, aching dick for _any_ form of friction.  
  
“You’re a dick,” Keith moaned, pressing his chest against the door. “Hurry up and fuck me.”  
  
“You’re impatient,” Lance hummed. He pulled his fingers out of Keith’s ass and pressed his dick against it instead, leaning in to nuzzle his face against Keith’s hair. “How badly do you want it?”  
  
So badly. Keith had fantasised about this for weeks now. He pushed his ass against Lance’s dick, impatient. “So badly, I don’t wanna fuck around with your teasing anymore!”  
  
Lance took the hint and pushed himself slowly into Keith. The red paladin moaned, the relief making him shake. Finally, _finally_ \-- Lance slid in easily, Keith pushing himself against him until Lance’s hips had pressed flush against Keith’s ass.  
  
“Please,” Keith sighed, blissed out. “Just _wreck_ me.”  
  
“That’s all I needed to hear.”  
  
Lance pulled out slowly, and Keith was about to complain again when Lance suddenly slammed back into him. Keith hissed, bunching his hands into fists.  
  
“Are you okay, Ke-”  
  
“Fuck me!” Keith wailed.  
  
“Oh!” Lance gripped at Keith’s hips. “If you say so.”  
  
Keith pushed himself against Lance, barely able to hold himself up as he pounded into him. One of Keith’s hands pumped his dick, finally getting what he was imagining in the cafeteria.  
  
One of Lance’s hands moved from Keith’s hips to slink under his shirt. His fingertips barely touched Keith’s stomach, making him shiver. Lance traced circles around Keith’s nipple - Keith never thought that it would feel good, but holy _shit_ , Lance _made_ it feel good. Keith’s cock throbbed in his hand, leaking more precum that Keith spread on his fingers as lubricant.  
  
Lance pinched Keith’s nipple, making him yelp. He wasn’t sure what he liked more - Lance on his nipple, or Lance in his ass. Keith bit his lip and groaned, squeezing the base of his cock, desperately holding back an orgasm. Not yet.  
  
Lance seemed to notice. He moved in closer, breathing heavily against Keith’s ear. “Are you gonna cum?” He whispered, making Keith shiver.  
  
“Are _you_?” Keith asked.  
  
Lance moaned in his ear - the most sensual thing Keith had ever heard. He had been so wrapped up in his own pleasure that he hadn’t even realised Lance was making such good noises. Their skin slapped together, Lance grunting at every other thrust. Keith could have gotten off on just the noises.  
  
“Yeah,” Lance sighed, a smile in his voice. “Your ass is so hot.”  
  
Keith pushed himself back against Lance, trying to roll his hips, desperately bringing himself back to orgasm. His thumb rolled across the head of his cock, Lance pinched his nipple, grunting in his ear, Keith throwing his head back, moaning--  
  
Keith’s hips jerked forwards, finally letting himself cum. It only took Lance a few more thrusts before he was cumming too, making noises that Keith only thought porn stars could make.  
  
Not caring about the mess, Keith leaned against the door to catch his breath, and Lance collapsed on top of him. It was only then that it really sank in.  
  
They just _had sex_.  
  
Keith pulled himself from the door and eased Lance away from him. His ass was free now, but it still felt weird - like someone had funnelled jelly up there. This would definitely need to take some getting used to.  
  
“This,” Keith huffed, looking at Lance and pointing at the cum on the door, “is your fault.”  
  
Lance laughed a little, breathless, but happy. “I’ll clean it up. Promise.”  
  
“Not yet,” Keith mumbled. He pulled himself closer to Lance and nuzzled his face in the crook of his neck. “Clean me up, first.”  
  
“Like, you want me to eat your ass..?”  
  
“No!” Keith shoved him, and Lance laughed. “I wanna take a shower, dumbass!”  
  
“Alright,” Lance smiled, goofy and cute. Way too cute. He had no business being this cute. Keith’s heart went a little faster every time Lance was near. With anyone else, he’d say it was love, but… this was Lance. No way.  
  
“You know,” Lance piped up, “the ass-eating thing is on the table.”  
  
No way, Keith was not in love with _that_. “Just get in the bathroom!”


End file.
